package Pacote1;

import grails.test.*
import les.*

class CrudCirculoTests extends functionaltestplugin.FunctionalTestCase {
	
	void testCriacaoDeCirculoComSucessoTodosOsDadosCorretos() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		
		redirectEnabled = false
		
		get ("/encontro/create")
		form(){
			tema = "EJC2011"
			click "create"
		}
		
		get ("/circulo/create")
		
		form() {
			nome = "Circulo 1"
			cor = "Azul"
			selects['encontro.id'].select "2"
			click "create"
		}
		
		assertRedirectUrlContains "/circulo/show"
		followRedirect()
		redirectEnabled = true
		
		assertContentContains "Circulo criado(a) com sucesso"
		assertContentContains "EJC2011"
	}
	
	void testCriacaoDeCirculoComSucessoPassandoNomeECor() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		
		redirectEnabled = false
		
		
		get ("/circulo/create")
		
		form() {
			nome = "Circulo 1"
			cor = "Azul"
			click "create"
		}
		
		assertRedirectUrlContains "/circulo/show"
		followRedirect()
		redirectEnabled = true
		
		assertContentContains "Circulo criado(a) com sucesso"
		assertContentContains "EJC2010"
	}
	
	void testCriacaoDeCirculoComFracassoApenasNome() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		
		redirectEnabled = false
		
		get ("/circulo/create")
		
		form() {
			nome = "Circulo 1"
			cor = ""
			click "create"
		}
		
		redirectEnabled = false
		assertContentContains "O campo cor n&atilde;o pode ficar em branco"
	}
	
	void testCriacaoDeCirculoComFracassoApenasCor() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		
		redirectEnabled = false
		
		get ("/circulo/create")
		
		form() {
			nome = ""
			cor = "Azul"
			click "create"
		}
		
		redirectEnabled = false
		assertContentContains "O campo nome n&atilde;o pode ficar em branco"
	}
	
}